/*
 * Copyright 2011 Clean GWT
 * 
 * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
 * in compliance with the License. You may obtain a copy of the License at
 * 
 * http://www.apache.org/licenses/LICENSE-2.0
 * 
 * Unless required by applicable law or agreed to in writing, software distributed under the License
 * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
 * or implied. See the License for the specific language governing permissions and limitations under
 * the License.
 */
package com.cleangwt.showcase.server.entity;

import java.util.Date;
import java.util.List;

import javax.jdo.annotations.Extension;
import javax.jdo.annotations.IdGeneratorStrategy;
import javax.jdo.annotations.IdentityType;
import javax.jdo.annotations.PersistenceCapable;
import javax.jdo.annotations.Persistent;
import javax.jdo.annotations.PrimaryKey;

/**
 * @author Jess
 * @version 1.0
 * @since 1.0
 */
@PersistenceCapable(identityType = IdentityType.DATASTORE)
public class User {
  @Persistent
  private String address;
  @Persistent
  private Integer age;
  @Persistent
  private Date birth;
  @PrimaryKey
  @Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY)
  @Extension(vendorName = "datanucleus", key = "gae.encoded-pk", value = "true")
  private String id;
  @Persistent
  private List<String> interestings;
  @Persistent
  private String male;
  @Persistent
  private String name;
  @Persistent
  private Integer salary;

  /**
   * @return the address
   */
  public String getAddress() {
    return address;
  }

  /**
   * @return the age
   */
  public Integer getAge() {
    return age;
  }

  /**
   * @return the birth
   */
  public Date getBirth() {
    return birth;
  }

  /**
   * @return the id
   */
  public String getId() {
    return id;
  }

  /**
   * @return the interestings
   */
  public List<String> getInterestings() {
    return interestings;
  }

  /**
   * @return the male
   */
  public String getMale() {
    return male;
  }

  /**
   * @return the name
   */
  public String getName() {
    return name;
  }

  /**
   * @return the salary
   */
  public Integer getSalary() {
    return salary;
  }

  /**
   * @param address the address to set
   */
  public void setAddress(String address) {
    this.address = address;
  }

  /**
   * @param age the age to set
   */
  public void setAge(int age) {
    this.age = age;
  }

  /**
   * @param birth the birth to set
   */
  public void setBirth(Date birth) {
    this.birth = birth;
  }

  /**
   * @param id the id to set
   */
  public void setId(String id) {
    this.id = id;
  }

  /**
   * @param interestings the interestings to set
   */
  public void setInterestings(List<String> interestings) {
    this.interestings = interestings;
  }

  /**
   * @param male the male to set
   */
  public void setMale(String male) {
    this.male = male;
  }

  /**
   * @param name the name to set
   */
  public void setName(String name) {
    this.name = name;
  }

  /**
   * @param salary the salary to set
   */
  public void setSalary(Integer salary) {
    this.salary = salary;
  }

}